<?php
class ArmazenagemController extends Zend_Controller_Action
{

    public function init()
    {
        
    }
    
    public function indexAction(){
        $form = new App_Form_Pesquisa();
        $form->montaTipoBusca(array('co_produto'=>'Cód. Categoria'
                                   ,'no_produto'=>'Nome'));
        $form->setNoBtnCadastrar();
        $form->setAction('javascript:;');
        $form->show();
        $this->view->form = $form;
    }
    
    public function listarAction(){
        $this->_helper->layout->disableLayout();			
        try {
            if ($this->getRequest()->isPost()) {				  
                $arrParam = array($this->_getParam('tipo_busca') => addslashes($this->_getParam('palavra_chave')));
                $obRepository = new App_Model_CompraRepository();                            
                $paginator = new Voitech_Paginator($obRepository->listarTodos($arrParam),$this->_getParam( 'list' ),$this->_getParam('page'));		       					    	
                $this->view->paginator	= $paginator->paginar(10);
                $this->view->div_id 	= 'div_listar_estoque';
                $this->view->dataType 	= "post";
                $this->view->frmName	= "frmPesquisar";       
            }			
        }catch (Voitech_ExceptionValidate $e) {
                //echo $this->_helper->json(array('resultado'=>ERRO_VALIDACAO,'retorno'=>'Favor preencher corretamente os dados obrigatórios'));
                echo $this->_helper->json(array('resultado'=>ERRO_VALIDACAO,'retorno'=>'favor preencher dados obrigatórios'));
        }catch (Voitech_Exception $e) {
                echo $this->_helper->json(array('resultado'=>ERRO,'retorno'=>$e->getMessage()));
        }catch (Exception $e) {
                Voitech_Log::gerarLog($e->getMessage());
                echo $this->_helper->json(array('resultado'=>ERROR_GERAL,'retorno'=>$e->getMessage()));
        }			
    }
    
    public function listarArmazenagemLimiteAction(){
        $obArmazenagemRepository = new App_Model_ArmazenagemRepository();
        $paginator = new Voitech_Paginator($obArmazenagemRepository->listarArmazenagemLimite(),$this->_getParam( 'list' ),$this->_getParam('page'));		       					    	
        $this->view->paginator	= $paginator->paginar(10);
        $this->view->div_id 	= 'div_listar_armazenagem_limite';
        $this->view->dataType 	= "post";
        $this->view->frmName	= "frmPesquisar";
    }
    
    public function buscarTotalEstoqueProdutoJsonAction(){
        $this->_helper->layout->disableLayout();
        $this->_helper->viewRenderer->setNoRender();
        $obArmazenagemRepositorio = new App_Model_ArmazenagemRepository();
        $arEstoque = $obArmazenagemRepositorio->listarProdutoEstoque($this->_getAllParams());
        echo $this->_helper->json(array('resultado'=>OK,'retorno'=>$arEstoque[0]->getNuQuantidadeProdutoEstoque()));
    }
}

